Object oriented programming systems and processes, also referred to as "object oriented computing environments", have been the subject of much investigation and interest in state of the art data processing environments. As is well known to those having skill in the art, object oriented computing environments are composed of a large number of "objects". An object is a data structure, also referred to as a "frame", and a set of operations or functions, also referred to as "methods", that can access that data structure. The frame has many "slots", each of which contains an "attribute" of the data in the slot. The attribute may be a primitive (such as an integer or string) or an object reference which is a pointer to another object.
Each defined object will usually be manifested in a number of "instances". Each instance contains the particular data structure for a particular example of the object. In An object oriented computing environment, data is processed by requesting an object to perform one of its methods by sending the object a "message". The receiving object responds to the message by choosing the method that implements the message name, executing this method on the named instance, and returning control to the calling high level routine along with the results of the method.
As object oriented computing environments proliferate, it becomes increasingly important to allow import and export of data between the object oriented computing environment and an external computing environment. The external computing environment may be a conventional functionally programmed computing environment or may be another object oriented computing environment. Typical interfaces between an object oriented environment and an external environment may include an interactive host user interface, a batch interface, a remote work station user interface, or other well known interfaces between computing environments.
In importing and exporting data between an object oriented computing environment and an external computing environment, an interface is typically defined and generated between the object oriented computing environment and the external computing environment. The interface will contain mechanisms for validating the imported and exported data, and for converting the imported and exported data to a form which is usable by the importing or exporting system. As the number of interfaces proliferate, the data importing and exporting mechanisms must be duplicated and customized for each type of interface. The need to generate and maintain a separate user interface adds to program complexity and cost and increases the possibility of errors.